This is an lzh file containing a set of programs called T3DLIB (previously known as TTDDDLIB). These programs convert 3D objects in the binary TDDD format into the Textual TDDD (TTDDD) format and back again, and also provide a number of other conversion filters. ----------------------------------- These programs are provided as SHAREWARE. If you choose to use these programs, you are obligated to send in a $25 (US) to the author, Glenn Lewis. His address: Glenn M. Lewis 8341 Olive Hill Court Fair Oaks, CA 95628 (USA) Glenn is also reachable via email at glewis@pcocd2.intel.com. ---------------- Enjoy these programs and the objects, and send in your Shareware fee to Glenn! [condensed message from...] -Steve -------------------------------------------------------------------------- Steve Worley Worley@cup.portal.com -------------------------------------------------------------------------- As of March 31, 1992, I have included the Amiga executables of the latest revision of T3DLIB in the files: T3DLIB*_68000exe.lha (68000, non-FPU version) T3DLIB*_68030exe.lha (68030, FPU version) Note that these were compiled with SAS/C, and so they do not have that bogus restriction of running only under version 2.04 of the operating system like the R33 version of the executables had! Yahoo! Thanks, Scott! You will find several filters in there, all of which support Imagine objects (and, of course, Turbo Silver objects). The most important filter you will use is called "readwrite", which basically replaces the old ReadTDDD and WriteTDDD programs. "ReadWrite" will read from its standard input, *EITHER* an Imagine object file *OR* a TTDDD file, and it is smart enough to know which is which without you telling it. (In fact, all of the executables from T3DLIB now read either type of file!) It will also read old Turbo Silver files, and make all external objects internal. "readwrite" will, by default, output TTDDD files to its standard output. But if you give it the "-tddd" flag (or "-t" for short), it will output Imagine object files directly! Remember that all of these programs are filters, so you must redirect their input and output from/to files. readwrite - reads and writes both TDDD and TTDDD files tddd2mif - reads TDDD or TTDDD files and outputs FrameMaker MIF files tddd2ps - reads TDDD or TTDDD files and outputs isometric wireframes with Top, Front, Right, and Isometric views in PostScript tddd2nff - reads TDDD or TTDDD files and outputs NFF files tddd2off - reads TDDD or TTDDD files and outputs OFF files tddd2ray - reads TDDD or TTDDD files and outputs Rayshade 4.0 files tddd2vort - reads TDDD or TTDDD files and outputs VORT files Two new filters as of release 34 are: tddd2dxf - reads TDDD or TTDDD files and outputs DXF (AutoCAD) files tddd2pov - reads TDDD or TTDDD files and outputs POV-Ray 1.0 files Here is some documentation on the OFF and NFF versions: TDDD is a complex format that allows heirarchical structure to be defined. Thus, a car might be defined as different parts, such as the frame, the doors, the tires, and the windows. When you are converting from TDDD, sometimes you will want to merge all of the sub-parts together to form one single object, but other times it is convienient to have the different parts saved as seperate objects so you can manipulate them easier. T3DLIB supports both conversion methods by a flag, -split. The programs included: 1) tddd2off Usage: tddd2off [-geom_only] [-split] [infile] [outfile] Converts an input TDDD or TTDDD file to an OFF format file. It defaults to outputting both a .geom and a .ipcol file, but if you are only interested in the structure of the object, the flag -geom_only (or -g) will ouput only the point, edge, and face information. -split will split heirarchical objects into individual objects. In this case, if the outfile name is "model", the output names would be "model001.geom", "model002,geom", etc. 2) tddd2nff Usage: tddd2nff [infile] [outfile] Converts an input TDDD or TTDDD file and saves an NFF format file. ------------------------------------------------------------------------- Althought the following does not cut it for documentation (hopefully I will have some real docs by the next release...), I thought this might be helpful to some people: >>>>> On Wed, 24 Jun 92 13:23:29 -0400, kelly@ll.mit.edu said: Dave> Greetings; Dave> Can anyone out there tell me a little about the program Dave> TTDDD? Specifically what kinds of things can be done with it Dave> (especially by none programmers such as myself). I downloaded some Dave> nice 3D fonts from hubcap that were converted from TeX with TTDDD. Dave> Is this the kind of thing that I could do with little or no Dave> programming? Also what other programs/excessories would be useful Dave> with TTDDD? Thanks for the help! Hi! I am Glenn Lewis, the author of TTDDD and T3DLIB (previously known as "TTDDDLIB"). I thought I would post to the list so that everybody would be up-to-date. Basically, the old TTDDD programs, called "ReadTDDD" and "WriteTDDD" are obsolete, and do not support any of the new Imagine sub-chunks. Let me give you a summary of what T3DLIB can do for you from my point of view, which is obviously quite biased. First, T3DLIB consists of two things: a linkable library of routines that allow programmers to manipulate 3D objects and scenes easily from within their own applications. (Of course if you wish to use my code in a commercial product, you must check with me first, as one author failed to do.) The second part of T3DLIB is a collection of filters that are built using the linkable library. T3DLIB supports (reads/writes) most all "chunks" in the Imagine TDDD file format. The source code (and executables that run under *BOTH* 2.04 and 1.3 of the Amiga operating system without any special libraries) are available on hubcap.clemson.edu [130.127.8.1] in the directory: pub/amiga/incoming/imagine/TTDDDLIB. The main program included in T3DLIB is called "ReadWrite". This is the one that makes the previous two programs obsolete, as mentioned above. "ReadWrite" is simply a filter, but a powerful one. First off, I better describe what the TTDDD format is: TTDDD is "Textual TDDD", and "TDDD" is an IFF (Interchange File Format [?]) that has many "chunks" and "sub-chunks" that describe objects and scene for Imagine (and previously Turbo Silver). "TDDD" was created by Impulse, Inc. TTDDD was created by me, and allows any text file to describe in full detail, all that a TDDD file can describe, but is editable and can be algorithmically generated. Back to "ReadWrite"... ReadWrite reads a file from its standard input, and writes a file to its standard output. The input file can be *either* a TTDDD *or* a TDDD file, and the output, by default, is a TTDDD file. If "ReadWrite" is given the "-tddd" (or "-t" for short) flag on its command line, it will write a TDDD file that is directly loadable by Imagine. Since Imagine does not support "external" objects like Turbo Silver did, "ReadWrite" will load any "external" objects at that time and make them internal to make Imagine happy. Also, if one wishes to "optimize" points and edges (by simply removing redundancies), the "-m" (for "merge") flag will accomplish this. This does, however, take much longer processing time, so sit back and let it crunch on the object(s). This, obviously, is the most useful (and necessary) program for dealing with TTDDD and TDDD files. Here is a list of other utilities that are included: tddd2off tddd2nff tddd2vort tddd2ray tddd2ps tddd2mif tddd2dxf tddd2pov All of the above are also filters, and perform the following conversions: tddd2off - converts TDDD (or TTDDD automatically) to OFF format tddd2nff - converts TDDD (or TTDDD automatically) to NFF format tddd2vort - converts TDDD (or TTDDD automatically) to VORT format tddd2ray - converts TDDD (or TTDDD automatically) to Rayshade 4.0 format tddd2ps - converts TDDD (or TTDDD automatically) to PostScript format tddd2mif - converts TDDD (or TTDDD automatically) to MIF format tddd2dxf - converts TDDD (or TTDDD automatically) to DXF (AutoCAD) format tddd2pov - converts TDDD (or TTDDD automatically) to POV-Ray format OFF is DEC's Object File Format. NFF is Eric Haines' (SP?) Neutral File Format. VORT is the "Very Ordinary Ray Tracer", I believe. Rayshade is that awesome program by Craig Kolb. PostScript output has 4 views: Top, front, right, and isometric. MIF is "Maker Interchange Format" for FrameMaker, and looks like the PostScript output, but is editable from within FrameMaker. DXF is AutoCAD's interchange file format. POV is POV-Ray's file format. The entire T3DLIB package is shareware, and costs $25 to register. Details are in the sources archive on hubcap. As a "Thank You" for registering, I will send you a disk with the two utilities: TSTeX (which created the font you viewed on hubcap from public domain TeX fonts [in PK format]) and SQuad, which generates superquadric surfaces based upon parameters that you supply it. Examples of superquadrics are torii, cubes (with rounded edges), diamonds, and a sphere is a degenerate superquadric. I will also send you a copy of the TDDD file format, which is basically the documentation for the TTDDD file format, as it uses the same names, but is editable. I also provide some examples on the diskette. But back to your original question: What can this do for non-programmers? Well, you will probably find the utilities useful, and you may be interested in looking at the geometric details of an object (OK, maybe not :-). Most definitely, though, the power of the package comes from being able to algorithmically generate or modify objects and scenes for animating or for simply creating/modifying complex objects. Helge Rasmussen, for example, created a program called "igensurf" that uses the TTDDD format and filters to generate basically any surface that you can describe mathematically in closed form. Steve Worley, for another example, created an animation of a waterfall by algorithmically controlling the positions of thousands of little spheres. I, for a third example, created the steam locomotive object on hubcap with the help of TTDDD, and animated the pistons and wheels. One of my registered shareware users has a cabinetry business and models all cabinets and drawers using TTDDD first, and presents a video of his plans to the customer before he ever starts, making each presentation expressly unique for that person's kitchen or room. Feel free, if you have any questions, to send me e-mail. I hope I have answered any questions you have, without attempting to make this a commercial. Future work includes general object morphing for Imagine such that *any* two objects can be morphed from one to the other, with T3DLIB creating all the in-betweens, since Imagine currently can only morph two objects with the same topology (points/edges/faces). Of course, work on this will not continue until Steve Worley and I finish up Essence and ship it. :-) [Hmmm... as of release 34, that is not longer an excuse, so I will have to think of another good one. :-) ] -- Glenn Glenn Lewis | glewis@pcocd2.intel.com | These are my opinions...not Intel's